본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Massively Parallel Processing; MPP
각자 메모리와 운영체제를 가진 많은 프로세서(노드)가 고속 연결망으로 이어져 하나의 작업을 나누어 동시에 처리하는 컴퓨터 구조

대규모 병렬 처리는 노드끼리 메모리를 공유하지 않는 비공유(shared-nothing) 방식이다. 노드마다 자기 CPU·메모리·디스크를 갖고, 다른 노드의 데이터가 필요하면 연결망으로 메시지를 주고받는다. 메모리를 나눠 쓰지 않으므로 노드를 늘려도 메모리 버스 경쟁이 생기지 않아 수백~수천 노드까지 확장할 수 있다. 대신 데이터를 어떻게 나눠 둘지(분산 키)와 노드 사이 통신량이 성능을 좌우한다.

슈퍼컴퓨터와 대용량 데이터 웨어하우스가 이 구조를 쓴다. 아마존 Redshift, Teradata, Greenplum 같은 분석용 데이터베이스는 테이블을 여러 노드에 나눠 저장하고, 한 질의를 노드마다 동시에 처리한 뒤 결과를 모은다.

다중 프로세서 구조 비교

편집 원본 편집
구분 SMP (대칭형 다중 처리) NUMA MPP (대규모 병렬 처리)
메모리 모든 프로세서가 하나의 주기억장치를 공유 공유하지만 노드마다 가까운 메모리와 먼 메모리가 있다 노드마다 따로 갖고 공유하지 않는다
운영체제 하나 하나 노드마다
통신 공유 메모리 공유 메모리(노드 간 연결) 메시지 전달
확장성 버스 경쟁으로 수십 개 정도 수백 개 수천 개 이상

혼동하기 쉬운 것

편집 원본 편집
  • MPP 는 프린터 병렬 포트의 전송 모드 이름이 아니다. 병렬 포트의 모드는 SPP·EPP·ECP 다.
  • MPP 의 P 는 Processing(처리)이다. 여러 컴퓨터를 묶는 분산 처리 시스템과 닮았으나, MPP 는 하나의 시스템 안에서 한 작업을 나눠 푸는 데 초점이 있다.